package java代理.静态代理;

/**
 * @author: wh(1835734390 @ qq.com)
 * @date: 2023/3/23 10:50
 * @description: 通过静态代理，我们达到了功能增强的目的，而且没有侵入原代码，这是静态代理的一个优点
 * 缺点：不适合复杂场景
 * 1、 当需要代理多个类的时候，由于代理对象要实现与目标对象一致的接口，有两种方式：
 * （1）只维护一个代理类，由这个代理类实现多个接口，但是这样就导致代理类过于庞大
 * （2）新建多个代理类，每个目标对象对应一个代理类，但是这样会产生过多的代理类
 * 2、 当接口需要增加、删除、修改方法的时候，目标对象与代理类都要同时修改，不易维护。
 * @version:
 */
public class Client1 {
    public static void main(String[] args) {
        UserService userServiceImpl = new UserServiceImpl();
        UserService proxy = new UserServiceProxy(userServiceImpl);

        proxy.select();
        proxy.update();
    }
}
